home *** CD-ROM | disk | FTP | other *** search
/ The 640 MEG Shareware Studio 2 / The 640 Meg Shareware Studio CD-ROM Volume II (Data Express)(1993).ISO / virus / tbav503.zip / TBMEM.DOC < prev    next >
Text File  |  1992-12-29  |  19KB  |  721 lines

  1.  
  2.  
  3.  Thunderbyte memory guard. (C) Copyright 1992 Thunderbyte B.V.
  4.  
  5.  
  6.                                Table of Contents
  7.  
  8.  
  9.     1. INTRODUCTION...................................... 2
  10.         1.1. Purpose of TbMem............................ 2
  11.         1.2. A Quick start............................... 2
  12.         1.3. Benefits.................................... 2
  13.  
  14.     2. USAGE OF THE PROGRAM.............................. 4
  15.         2.1. System requirements......................... 4
  16.         2.2. Program invocation.......................... 4
  17.             2.2.1. Invocation in Config.Sys.............. 5
  18.             2.2.2. Invocation in network environment..... 5
  19.             2.2.3. Invocation when using MS-Windows...... 5
  20.         2.3. What is a memory resident program?.......... 5
  21.         2.4. Detecting memory resident software.......... 5
  22.         2.5. Command line options........................ 6
  23.             2.5.1. help ................................. 6
  24.             2.5.2. off .................................. 6
  25.             2.5.3. on ................................... 7
  26.             2.5.4. remove ............................... 7
  27.             2.5.5. secure ............................... 7
  28.             2.5.6. hotkey ............................... 7
  29.             2.5.7. nocancel ............................. 7
  30.         2.6. Examples:................................... 7
  31.         2.7. The Cancel hot key.......................... 7
  32.  
  33.     3. CONSIDERATIONS AND RECOMMENDATIONS................ 9
  34.         3.1. Site installation........................... 9
  35.         3.2. Solving incompatibility problems............ 9
  36.         3.3. Reducing the memory requirements........... 10
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.                                      Page i
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.                                      Page 1
  122.  
  123.  Thunderbyte memory guard. (C) Copyright 1992 Thunderbyte B.V.
  124.  
  125.  
  126. 1.  INTRODUCTION
  127.  
  128.  
  129.   1.1.  Purpose of TbMem
  130.  
  131.     Most viruses remain resident in memory once they have been
  132.     executed.  While resident in memory, they may have many
  133.     opportunities to infect other files in the background, interfere
  134.     with the system operation, hide themselves from virus scanners or
  135.     checksummers, and/or perform other nasty tasks.
  136.  
  137.     On the other hand, because so many viruses remain resident in
  138.     memory, it is easy to detect most of them once the process of
  139.     becoming resident in memory is monitored.
  140.  
  141.     TbMem monitors the system and ensures that no program will remain
  142.     resident in memory without permission!  This will draw attention to
  143.     any software that attempts to remain resident, thereby reducing the
  144.     likelihood that a virus will be able to go unnoticed.
  145.  
  146.  
  147.   1.2.  A Quick start
  148.  
  149.     Although we highly recommend a complete reading of this manual, here
  150.     are some directions for a quick run of TbMem:
  151.  
  152.     Load TbDriver first if it is not yet loaded. Type "TbDriver" and
  153.     press return.
  154.     To load TbMem type "TbMem" and press return.
  155.  
  156.     The invocation syntax is:
  157.             TBMEM [<options>]...
  158.  
  159.     For fast online help type "TbMem ?" or "TbMem help".
  160.  
  161.  
  162.   1.3.  Benefits
  163.  
  164.     TbMem has several advantages over other memory guards:
  165.  
  166.     +   TbMem not only informs you when a program tries to remain
  167.         resident in memory, it also offers you the option to abort
  168.         the program before it can become resident.
  169.  
  170.     +   Detection of 'stealth' TSR techniques. TbMem will guard the DOS
  171.         TSR function calls, while also monitoring important interrupts
  172.         and memory structures.
  173.  
  174.     +   Easy maintenance. TbMem uses the Anti-Vir.Dat records to
  175.         determine if a program is allowed to remain resident in memory.
  176.         Many common TSRs will be recognized by TbSetup. However, if
  177.         TbSetup doesn't recognize a TSR, TbMem will ask your permission
  178.  
  179.  
  180.  
  181.                                      Page 2
  182.  
  183.  Thunderbyte memory guard. (C) Copyright 1992 Thunderbyte B.V.
  184.  
  185.  
  186.         for the TSR to load. Permission information will be maintained
  187.         in the Anti-Vir.Dat files, to prevent TbMem from bothering you
  188.         when an approved TSR is loading.
  189.  
  190.     +   Easy site installation. Once you have 'taught' TbMem which
  191.         programs are TSRs and which are not on one machine, you can use
  192.         TbSetup to set the permission flag of these files on other
  193.         machines.
  194.  
  195.     +   As an extra bonus, TbMem installs a hot key that can be used to
  196.         escape from nearly all programs.
  197.  
  198.     +   TbMem is fully network compatible. It does not require you to
  199.         reload the checker after logging on to a network. Other
  200.         resident anti-virus utilities force you to choose between
  201.         protection before the network is started, or protection after
  202.         the network is started, but not both.
  203.  
  204.     +   TbMem can display its messages in your local language.
  205.  
  206.     +   TbMem uses less than 600 bytes of memory, and it can be loaded
  207.         into upper memory.
  208.  
  209.  
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240.  
  241.                                      Page 3
  242.  
  243.  Thunderbyte memory guard. (C) Copyright 1992 Thunderbyte B.V.
  244.  
  245.  
  246. 2.  USAGE OF THE PROGRAM
  247.  
  248.  
  249.   2.1.  System requirements
  250.  
  251.     TbMem runs perfectly on standard machines, in line with our
  252.     philosophy that there should be a limit to limitations.
  253.  
  254.     +   TbMem can be executed under DOS version 3.00 (and all later
  255.         versions). However, Dos 5.0 or higher is recommended, since
  256.         TbMem has been optimized and designed primarily for use with
  257.         these DOS versions.
  258.  
  259.     +   TbMem requires about 4 Kb of free memory to be invoked.
  260.         After termination it requires only 600 bytes of memory.
  261.  
  262.  
  263.   2.2.  Program invocation
  264.  
  265.     It is recommended to invoke TbMem automatically from within your
  266.     Config.Sys or Autoexec.Bat file. It is important to invoke TbMem
  267.     as early as possible after the machine has booted. For that reason
  268.     it is desirable to invoke TbMem from within the Config.Sys file.
  269.  
  270.     TbMem requires TbDriver to be loaded first!
  271.  
  272.     TbMem is easy to use. The syntax is as follows:
  273.             TbMem [<options>]...
  274.  
  275.     There are three possible ways to invoke TbMem:
  276.  
  277.     To invoke TbMem from the DOS prompt or within the Autoexec.Bat
  278.     file:
  279.             <path>TbMem
  280.  
  281.     To invoke TbMem from the Config.Sys as a TSR (Dos 4+):
  282.             Install=<path>TbMem.Exe
  283.  
  284.     To invoke TbMem from the Config.Sys as a device driver:
  285.             Device=<path>TbMem.Exe
  286.  
  287.     TbMem should always work correctly after being started from
  288.     within the Autoexec.Bat. The "Install=" Config.Sys command is
  289.     NOT available in DOS 3.xx.
  290.  
  291.     In addition to the three invocation possibilities DOS 5+ users can
  292.     "highload" TbMem into an UMB (upper memory block) if it is
  293.     available:
  294.             LoadHigh <path>TbMem.Exe
  295.     Within the Config.Sys file TbMem can also be loaded high:
  296.             DeviceHigh=<path>TbMem.Exe
  297.  
  298.  
  299.  
  300.  
  301.                                      Page 4
  302.  
  303.  Thunderbyte memory guard. (C) Copyright 1992 Thunderbyte B.V.
  304.  
  305.  
  306.    2.2.1.  Invocation in Config.Sys
  307.  
  308.     -> Invoking TbMem as a device driver does not work in all OEM
  309.        versions of DOS. You have to try it, if it doesn't work use the
  310.        "Install=" command or load TbMem from within the Autoexec.Bat.
  311.  
  312.    2.2.2.  Invocation in network environment
  313.  
  314.     -> Unlike other anti-virus products, the Thunderbyte anti-virus
  315.        utlities can be loaded before the network is started without
  316.        losing the protection after the network has been started.
  317.  
  318.    2.2.3.  Invocation when using MS-Windows
  319.  
  320.     -> Windows users should invoke TbMem BEFORE starting Windows.
  321.        If you do that there is only one copy of TbMem in memory, but
  322.        every DOS-window will nevertheless have a fully functional
  323.        TbMem in it.  TbMem detects if Windows is starting up, and
  324.        will switch itself into multitasking mode if necessary. You can
  325.        even disable TbMem in one window without affecting the
  326.        functionality in another window.
  327.  
  328.  
  329.   2.3.  What is a memory resident program?
  330.  
  331.     Most programs will be invoked by a command on the DOS command line,
  332.     perform some task, and finally terminate, placing you right back
  333.     where you started.
  334.  
  335.     Some programs however continue to operate after they are
  336.     terminated. These programs load themselves into memory of your PC,
  337.     remain resident in memory and perform some task on the background.
  338.     Programs in this category are disk caches, print spoolers, network
  339.     software, etc. These programs are often referred to as
  340.     'TSR-software', which means 'Terminate-and-Stay-Resident'.
  341.  
  342.     Most viruses remain resident in memory too, and that is why the
  343.     process of becoming resident in memory should be controlled in
  344.     some way, preferably by TbMem.
  345.  
  346.  
  347.   2.4.  Detecting memory resident software
  348.  
  349.     If TbMem detects that a program tries to remain resident in memory,
  350.     a pop-up window will appear with a message, informing you about
  351.     this in your own language. You can either choose to continue, or to
  352.     abort the program invocation.
  353.  
  354.     If you answer 'NO' to the question 'Remove program from memory?' the
  355.     program will continue undisturbed, and TbMem places a mark in the
  356.     Anti-Vir.Dat file about this program. Next time you invoke the same
  357.     resident program, TbMem will not disturb you again.
  358.  
  359.  
  360.  
  361.                                      Page 5
  362.  
  363.  Thunderbyte memory guard. (C) Copyright 1992 Thunderbyte B.V.
  364.  
  365.  
  366.     There are a lot of programs which normally remain resident in
  367.     memory, such as disk caches, print spoolers, etc. How does TbMem
  368.     distinguish between these programs and viruses?
  369.  
  370.     TbMem uses the Anti-Vir.Dat records generated by TbSetup to keep
  371.     track of which files are normal TSRs and which are not. Most common
  372.     resident software will be marked as such by TbSetup, so you don't
  373.     have to worry about these files.
  374.  
  375.     If TbMem pops up with the message that a program tries to remain
  376.     resident in memory, you have to consider the purpose of the program
  377.     mentioned. Is the program supposed to continue to operate in the
  378.     background? The answer is obviously yes if the program mentioned is
  379.     a disk cache, print spooler, pop-up utility or system extension
  380.     software.
  381.  
  382.     However, if the message appears after you have finished a text
  383.     processing job, or terminated a database or spreadsheet
  384.     application, something is definitely wrong! You had better
  385.     terminate the program and use a virus scanner to check the system.
  386.  
  387.     The same applies when software that operates normally without
  388.     staying resident in memory suddenly changes its behavior and tries
  389.     to remain resident in memory indeed.
  390.  
  391.  
  392.   2.5.  Command line options
  393.  
  394.     It is possible to specify options on the command line. The upper
  395.     four options are always available, the other options are only
  396.     available if TbMem is not already resident in memory.
  397.  
  398.     optionword  parameter  short  explanation
  399.     ----------  ---------  ----- ----------------------------
  400.  
  401.         help                ?  =display this helpscreen
  402.         off                 d  =disable checking
  403.         on                  e  =enable checking
  404.         remove              r  =remove TbMem from memory
  405.  
  406.         secure              s  =do not execute unauthorized TSRs
  407.         keycode =<keycode>  k  =specify hotkey scancode
  408.         nocancel            n  =do not install cancel hot key
  409.  
  410.    2.5.1.  help (?)
  411.  
  412.     If you specify this option TbMem will show you the brief help as
  413.     shown above.
  414.  
  415.    2.5.2.  off (d)
  416.  
  417.     If you specify this option TbMem will be disabled, but it will
  418.  
  419.  
  420.  
  421.                                      Page 6
  422.  
  423.  Thunderbyte memory guard. (C) Copyright 1992 Thunderbyte B.V.
  424.  
  425.  
  426.     remain in memory.
  427.  
  428.    2.5.3.  on (e)
  429.  
  430.     If you use this option TbMem will be activated again after you
  431.     disabled it with the 'off' option.
  432.  
  433.    2.5.4.  remove (r)
  434.  
  435.     This option can be used to remove the resident part of TbMem from
  436.     your system's memory.  All memory used by TbMem will be released.
  437.     Unfortunately, the removal of a TSR (like TbMem) is not always
  438.     possible.  TbMem checks whether it is safe to remove the resident
  439.     part from memory. If it is not safe it just disables TbMem. A TSR
  440.     can not be removed if another TSR has been started after it.  If
  441.     this happens with TbMem it will completely disable itself.
  442.  
  443.    2.5.5.  secure (s)
  444.  
  445.     TbMem normally asks the user to continue or to cancel when a
  446.     program tries to remain resident in memory. In some business
  447.     environments however this choice should not be made by employees.
  448.     By using option 'secure' it is no longer possible to execute new or
  449.     unknown resident software.
  450.  
  451.    2.5.6.  hotkey (k)
  452.  
  453.     The program cancel hot key of TbMem is by default Ctrl-Alt-Insert.
  454.     If you wish, you can specify another keyboard option with option
  455.     'hotkey =<keycode>'. The scancode is specified in a 4 digit
  456.     hexadecimal number.  The left most bytes specify the shift-key
  457.     mask, the right most byte specifies the keyboard scancode. Consult
  458.     your machine manual for a list of scancodes. The default scancode
  459.     is 0C52h (Ctrl-Alt-Insert). The scancode for Ctrl-Alt-Escape is
  460.     0C01h.
  461.  
  462.    2.5.7.  nocancel (n)
  463.  
  464.     TbMem normally installs the program cancel hot key
  465.     (Ctrl-Alt-Insert). If you don't want this specify this option. This
  466.     also saves a few bytes of memory.
  467.  
  468.  
  469.   2.6.  Examples:
  470.  
  471.         C:\utils\TbMem
  472.  
  473.     or:
  474.         Device=C:\utils\TbMem.Exe
  475.  
  476.  
  477.   2.7.  The Cancel hot key.
  478.  
  479.  
  480.  
  481.                                      Page 7
  482.  
  483.  Thunderbyte memory guard. (C) Copyright 1992 Thunderbyte B.V.
  484.  
  485.  
  486.     TbMem offers you a reliable way to escape from any program by
  487.     pressing a special key combination. This can be used to escape from
  488.     programs that 'hang', but of course also to escape from software
  489.     that seems to be malicious (although powering down and rebooting from
  490.     a write-protected system disk is recommended). The key combination
  491.     is Ctrl-Alt-Insert.
  492.  
  493.  
  494.  
  495.  
  496.  
  497.  
  498.  
  499.  
  500.  
  501.  
  502.  
  503.  
  504.  
  505.  
  506.  
  507.  
  508.  
  509.  
  510.  
  511.  
  512.  
  513.  
  514.  
  515.  
  516.  
  517.  
  518.  
  519.  
  520.  
  521.  
  522.  
  523.  
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.  
  533.  
  534.  
  535.  
  536.  
  537.  
  538.  
  539.  
  540.  
  541.                                      Page 8
  542.  
  543.  Thunderbyte memory guard. (C) Copyright 1992 Thunderbyte B.V.
  544.  
  545.  
  546. 3.  CONSIDERATIONS AND RECOMMENDATIONS
  547.  
  548.  
  549.   3.1.  Site installation.
  550.  
  551.     If you have to install TbMem on a lot of machines in one company,
  552.     it would be tedious to invoke every single TSR on each machine in
  553.     order to 'teach' TbMem which programs are TSRs and which are not.
  554.     Fortunately, this is not necessary. If a resident utility named
  555.     TSRUTIL.EXE is used throuhgout the company, use TbSetup to
  556.     determine the length and CRC of the program. Now put the name of
  557.     this program along with the other information in the file
  558.     TbSetup.Dat and assign the value '0010' to it. Example:
  559.  
  560.     TSRUTIL.EXE  01286  E387AB21  0010  ;Our TSR utility
  561.  
  562.     Also consult the TbSetup documentation.
  563.  
  564.     If you now run TbSetup on every machine (you have to do this
  565.     anyway) it will recognize this utility and it will set the
  566.     TSR permission flag for TbMem automatically.
  567.  
  568.  
  569.   3.2.  Solving incompatibility problems.
  570.  
  571.     Although TbMem has been designed to cooperate with other resident
  572.     software, other software may not have been, causing system errors or
  573.     worse.
  574.  
  575.     The problems most often incurred:
  576.  
  577.     Problem:
  578.         After I have given permission for a program to remain resident
  579.         in memory, TbMem asks the same quesion next time.
  580.  
  581.     Solution:
  582.         1) The 'secure' option of TbDriver is specified. Remove this
  583.         option, reboot and try again.
  584.         2) The program mentioned does not appear in the Anti-Vir.Dat
  585.         file and therefore TbMem can not permanently store the
  586.         permission flag. Use TbSetup to generate the Anti-Vir.Dat
  587.         record of this program!
  588.  
  589.     Problem:
  590.         If TbMem tries to display a message, the text 'message file
  591.         <filename> could not be opened' appears.
  592.  
  593.     Solution:
  594.         Specify the FULL path and filename of the file that you will
  595.         use as message file after the TbDriver invocation. The default
  596.         filename is TbDriver.Lng
  597.  
  598.  
  599.  
  600.  
  601.                                      Page 9
  602.  
  603.  Thunderbyte memory guard. (C) Copyright 1992 Thunderbyte B.V.
  604.  
  605.  
  606.     Problem:
  607.         You are running a network. TbMem is installed succesfully,
  608.         but it does not detect TSRs anymore.
  609.  
  610.     Solution:
  611.         Use the command 'TbDriver net' after the network has been
  612.         loaded.
  613.  
  614.     Problem:
  615.         The system sometimes hangs when you answer 'NO' (do NOT abort
  616.         program) to a TbMem message.
  617.  
  618.     Solution:
  619.         Try using StackMan. StackMan is supplied in the TBAV package.
  620.  
  621.     Problem:
  622.         The system sometimes hangs when you answer 'YES' (abort
  623.         program) to a TbMem message.
  624.  
  625.     Solution:
  626.         None. Some resident programs deeply interfere with the system,
  627.         and once they are rejected from memory the state of the system
  628.         is not stable anymore.
  629.  
  630.  
  631.   3.3.  Reducing the memory requirements.
  632.  
  633.     Most PC users try to maintain as much free DOS memory as possible.
  634.     TbMem is designed to use a very small amount of DOS memory. To
  635.     decrease the memory requirements of TbMem even further do the
  636.     following:
  637.  
  638.     -   Load TbMem from within the Config.Sys file. If loaded as a
  639.         device driver TbMem has no Program Segment Prefix (PSP),
  640.         and that will save 256 bytes.
  641.  
  642.     -   If you invoke TbMem from within the Autoexec.Bat file do this
  643.         before establishing environment variables. DOS maintains a list
  644.         of environment variables for every resident program, so keep
  645.         this list small while installing TSRs. Once all TSRs have been
  646.         installed you can define all environment variables without
  647.         affecting the memory requirements of the TSRs.
  648.  
  649.     -   If you have DOS 5 or higher try to load TbMem into an upper
  650.         memory block using the "loadhigh" or "devicehigh" commands.
  651.  
  652.     -   Specify option 'nocancel'. This will save a few bytes.
  653.  
  654.     -   Use one of the processor specific versions of TbMem. They all
  655.         consume less memory than the generic version of TbMem.
  656.         Processor optimized versions are available on any Thunderbyte
  657.         support BBS.
  658.  
  659.  
  660.  
  661.                                     Page 10
  662.  
  663.  Thunderbyte memory guard. (C) Copyright 1992 Thunderbyte B.V.
  664.  
  665.  
  666.  
  667.  
  668.  
  669.  
  670.  
  671.  
  672.  
  673.  
  674.  
  675.  
  676.  
  677.  
  678.  
  679.  
  680.  
  681.  
  682.  
  683.  
  684.  
  685.  
  686.  
  687.  
  688.  
  689.  
  690.  
  691.  
  692.  
  693.  
  694.  
  695.  
  696.  
  697.  
  698.  
  699.  
  700.  
  701.  
  702.  
  703.  
  704.  
  705.  
  706.  
  707.  
  708.  
  709.  
  710.  
  711.  
  712.  
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719.  
  720.  
  721.                                     Page 11